import com.java4.Operations;

public class OperationsMutantTest {

	/* Permet de tuer AOIS_1, AOIS_2, AOIS_2, AOIS_4, AOIS_9, AOIS_10, AOIS_11, 
	 				AOIS_12, AOIU_1, AORS_1, LOI_1, LOI_5, LOI_6 */
	public long testAddition1() {
		long[] tab = new long[]{9,-9};
		long add = Operations.additionner(tab);
		return add;
	}

	/* Permet de tuer AOIS_1, AOIS_2, AOIS_2, AOIS_4, AOIS_9, AOIS_10, AOIS_11, 
	 				AOIS_12, AOIU_1, AOIU_2, ASRS_1, ASRS_2, ASRS_3, ASRS_4, 
	 				LOI_1, LOI_2, LOI_5, LOI_6 */
	public long testAddition2() {
		long[] tab = new long[]{18,18};
		long add = Operations.additionner(tab);
		return add;
	}

	/* Permet de tuer AOIU_4, ASRS_6, ASRS_7, LOI_8 */
	public long testMultiplication1()
	{
		long[] tab = new long[]{9, 9, -2, -4, 1, 8};
		long mult1 = Operations.multiplier(tab);
		long mult2 = Operations.multiplier(tab);
		long mult3 = Operations.multiplier(new long[]{9, mult2, -2, mult1, 1, 8});
		return mult3;
	}

	/* Permet de tuer ASRS_5, ASRS_8 */
	public long testMultiplication2()
	{
		long mult = Operations.multiplier(new long[]{-6, 0, 6});
		return mult;
	}

	/* Permet de tuer AOIS_15, AOIS_16, AOIS_17, AOIS_18, AOIS_23, AOIS_24, AOIS_25, 
	 				AOIS_26, AOIU_3, AOIU_4, AORS_2, ASRS_5, ASRS_6, 
	 				ASRS_7, ASRS_8, LOI_11, LOI_12, LOI_7, LOI_8  */
	public long testMultiplication3()
	{
		long[] tab = new long[]{9, 9, -2, -4, 1, 8, 0};
		long mult = Operations.multiplier(tab);
		return mult;
	}

	/* Permet de tuer AOIS_34, AOIS_36, AOIS_42, AOIS_43, AOIS_44, AOIU_5, 
	 				AORS_3, ASRS_9, ASRS_10, ASRS_11, LOI_13, LOI_15, LOI_18 */
	public long testDivision1()
	{
		long[] tab = new long[]{9, 9, -2, -4, 1, 8, 0};
		long div = Operations.diviser(tab);
		return div;
	}

	/* Permet de tuer AIOS_33, AOIS_34, AOIS_35, AOIS_36, AOIS_41, AOIS_42, AOIS_44, 
					AOIU_5, AOIU_5, AOIU_6, AORS_3, ASRS_9, ASRS_10, ASRS_11, 
					ASRS_12, LOI_13, LOI_14, LOI_15, LOI_18, LOI_19 */
	public long testDivision2()
	{
		long[] tab = new long[]{9, -9};
		long div = Operations.diviser(tab);
		return div;
	}

	/* Permet de tuer AOIS_51, AOIS_52, AOIS_53, AOIS_54, AOIS_59, AOIS_60, 
	 				AOIS_61, AOIS_62, AOIU_7, AOIU_8, AORS_4, ASRS_13, ASRS_14, 
	 				ASRS_15, ASRS_16, LOI_20, LOI_21, LOI_22, LOI_25 */
	public double testSoustraction1()
	{
		long[] tab = new long[]{9, 9, -2, -4, 1, 8};
		double sous = Operations.soustraire(tab);
		return sous;
	}

	/* Permet de tuer tous les mutants */
	public Boolean[] testPythagore1()
	{
		long[] tab1 = new long[]{2, 2, 2};
		long[] tab2 = new long[]{2, 3, 4};
		long[] tab3 = new long[]{7, 8, 10};
		long[][] tab = new long[][]{tab1, tab2, tab3};
		Boolean[] pyth = Operations.pythagore(tab);
		return pyth;
	}

	/* Permet de tuer tous les mutants */
	public Boolean[] testPythagore2()
	{
		Boolean[] pyth = Operations.pythagore(new long[][]{{3, 4, 5}, {6, 8, 10}, {15, 20, 30}});
		return pyth.clone();
	}

}